1. Field of the Invention
The present invention relates to a digital-to-analog converter (DAC), more particularly, to a digital-to-analog converter providing the MSB (most significant bit) portion and the LSB (least significant bit) portion with different bias voltages, wherein these two bias voltages would be adjusted according to the match of current source cells.
2. Description of the Related Art
The digital-to-analog converter (DAC) has been widely used for data transforming in electronic devices. The DAC mainly converts the digital signals to corresponding analog signals, which are used in electronic devices. The application of the DACs is very wide. The DACs with high resolution and high speed, for example, can be applied to mobile phones or base stations of communication systems, cordless communication networks, image processing and display systems, or audio/video systems, and so on.
A conventional DAC can be, for example, a binary-weighted DAC. Such a DAC comprises various current sources and the corresponding switches. A conventional binary-weighted DAC is shown in FIG. 1A, a schematic circuit block drawing. Wherein, a 3-bit DAC is taken as an example. The 3-bit DAC comprises three current sources 102, 104 and 106, and three corresponding switches S1, S2 and S3. The current source 102 is connected to the switch S1 via the line 112, and passes through the output line 118 for output. The current source 104 is connected to the switch S2 via the line 114, and passes through the output line 118 for output. The current source 106 is connected to the switch S3 via the line 116, and passes through the output line 118 for output. The proportion of currents provided by these three current sources 102, 104 and 106 is 4:2:1. That is, if one amp of current is provided by the current source 106, then the current source 104 and 102 would provide two amps and four amps of current, respectively.
During the operation, an input-code IN controls the turning-on and turning-off of switches S1, S2 and S3 and the corresponding output currents would reach the output end OUT via the line 118. According to such control, the magnitude of the output current is proportional to the value of input code IN. And a conventional output circuit (not shown), such as an operation amplifier, can be connected in series thereto for converting the output current to a corresponding voltage value, or to an output voltage with low impedance. The control circuit for the kind of binary-weighted DAC is simpler.
However, in the above operation, there would be so-called transient glitch which may affect the accuracy of digital-analog conversion. When an input-code IN is changed from 011 (in binary system) to 100, all three switches S1, S2 and S3 will change their status, although only the “1” bit-value is changed. Therefore, the binary-weighted DAC is not suitable for converting the digital signal with large bits, and it doesn't guarantee a non-monotonic function. Referring to FIG. 1B, a schematic coordination diagram of the relationship between input-codes and so-called corresponding differential non-linearity (DNL) errors is shown. For each input-code, major DNL errors would occur from time to time. That is, at two contiguous points of time to convert digital input-codes IN to analog signals, the actual output analog signal value is not an ideal value. The DNL error would affect the accuracy of output in the DAC. What is more, the DNL error will lead to a serious non-monotonic problem. That is, the output analog value converted from a smaller digital input-code is larger than that from a larger digital input-code, leading to serious error. It can be seen from FIG. 1C, during data transformation process, an unpredictable transient glitch could occur.
In other words, if a binary-weighted DAC has more bits, and each received digital bit controls 2(n−1) current source cells, where n ranges from 1 to 10, then, transient glitch would be more serious. The DNL error could be caused by characteristic discrepancy among the formed transistors in the array of current source cells. And, the characteristic discrepancy among the formed transistors can be traced back to the inconsistency in semiconductor manufacturing process, such as inconsistent thickness of oxide layer, poor poly-silicon etching, or shift in ion implant, and so on. In addition, the binary-weighted DAC needs a substantial chip layout area as well.
To improve the transient glitch, a DAC with so-called thermometer-code was introduced to control output of current source. Referring to FIG. 2, a schematic circuit drawing of an 8-bit DAC with thermometer-codes is shown. Wherein, the DAC 200 comprises two four-to-fifteen bit converters 210 and 220. The four-to-fifteen bit converter 210 is used for converting the four MSBs (most significant bits) in the input-code IN1, IN2, IN3 and IN4 to the corresponding fifteen pieces of data, M1, M2, M3, . . . , M15 (M1˜M15). And, the four-to-fifteen bit converter 220 is used for converting the four LSBs (least significant bits) in the input-code IN5, IN6, IN7 and IN8 to the corresponding fifteen pieces of data, L1, L2, L3, . . . , L15 (L1˜L15). These converted data are referred to as thermometer-code outputs. When the above-mentioned input-codes are on the increase, these thermometer-codes can avoid the transient glitch when switching all the switches, and consequently, suddenly changing the currents.
The DAC 200 further comprises fifteen current source cells CSM1˜CSM15 corresponding to MSBs and fifteen current source cells CSL1˜CSL15 corresponding to LSBs. The current source cells CSM1˜CSM15 are connected to the outputs M1˜M15 of the four-to-fifteen bit converter 210 via the corresponding switches SWM1˜SWM15. And, the current source cells CSL1˜CSL15 are connected to the outputs L1˜L15 of the four-to-fifteen bit converter 220 via the corresponding switches SWL1˜SWL15. The outputs M1˜M15 of the four-to-fifteen bit converter 210 are used to control the turning-on and turning-off of the switches SWM1˜SWM15. And, the outputs L1˜L15 of the four-to-fifteen bit converter 220 are used to control the turning-on and turning-off of switches SWL1˜SWL15.
The arrangement of the current source cells CSL1˜CSL15 corresponding to LSBs and the arrangement of the current source cells CSM1˜CSM15 corresponding to MSBs in the above-described configuration can be seen with reference to FIG. 3. The current source cells for LSBs and MSBs comprise 255 MOS transistors in an array. The array is formed by 16 columns and 16 rows. Each of all transistors is labeled with Tij where i and j represent the column number and the row number, respectively.
In the DAC with thermometer-codes to control the outputs from the current sources, the difference of the current source cells controlled by one thermometer-code and another is one cell only. Thus transient glitch can be reduced, but the size required by the current source cells is bigger, and the control circuit is very complicated.
To reduce the size of required current source cells and the complexity of the control circuit, those skilled in the art presented a segment-type DAC combining thermometer-code and binary-weighted to control the outputs of the current sources. The configuration thereof is schematically shown in FIG. 4. Assuming the segment-type DAC is capable of converting N-bits digital signal, then the M-bits, i.e. M MSBs, of N-bits signals are encoded to thermometer codes. That is, the M MSBs are encoded into 2M−1 thermometer-codes by a binary-to-thermometer encoder 410, then sent to the thermometer-code DAC 420. The rest of (N-M) LSBs pass through a delay device 430, and are directly sent to a binary-weighted DAC 440. Considering the die size and overall conversion, the segment-type DAC with a configuration combining thermometer-code and binary-weighted seems to be the best option available. But this configuration still has a match problem among the current source cells.
In the most ideal situation, the DAC should have linearly increasing analog output value along with the increasing value of the input-code. Nevertheless, it is apparent to those skilled in the art that in terms of the output from the DAC, the non-linearity problem still remains. In particular, as binary values are converted to thermometer-codes, the differential non-linearity (DNL) error still remains.